/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package bpel2rep.version.state;

import bpel2rep.version.VersionPackage;

import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EPackage;

/**
 * <!-- begin-user-doc -->
 * The <b>Package</b> for the model.
 * It contains accessors for the meta objects to represent
 * <ul>
 *   <li>each class,</li>
 *   <li>each feature of each class,</li>
 *   <li>each enum,</li>
 *   <li>and each data type</li>
 * </ul>
 * <!-- end-user-doc -->
 * @see bpel2rep.version.state.StateFactory
 * @model kind="package"
 * @generated
 */
public interface StatePackage extends EPackage {
	/**
	 * The package name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNAME = "state";

	/**
	 * The package namespace URI.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_URI = "http://de.tiw.bpel2resp.version.state";

	/**
	 * The package namespace name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_PREFIX = "state";

	/**
	 * The singleton instance of the package.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	StatePackage eINSTANCE = bpel2rep.version.state.impl.StatePackageImpl.init();

	/**
	 * The meta object id for the '{@link bpel2rep.version.state.impl.LockUseImpl <em>Lock Use</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see bpel2rep.version.state.impl.LockUseImpl
	 * @see bpel2rep.version.state.impl.StatePackageImpl#getLockUse()
	 * @generated
	 */
	int LOCK_USE = 0;

	/**
	 * The feature id for the '<em><b>Version</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int LOCK_USE__VERSION = VersionPackage.VERSION_STATE__VERSION;

	/**
	 * The number of structural features of the '<em>Lock Use</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int LOCK_USE_FEATURE_COUNT = VersionPackage.VERSION_STATE_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link bpel2rep.version.state.impl.LockWorkImpl <em>Lock Work</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see bpel2rep.version.state.impl.LockWorkImpl
	 * @see bpel2rep.version.state.impl.StatePackageImpl#getLockWork()
	 * @generated
	 */
	int LOCK_WORK = 1;

	/**
	 * The feature id for the '<em><b>Version</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int LOCK_WORK__VERSION = VersionPackage.VERSION_STATE__VERSION;

	/**
	 * The number of structural features of the '<em>Lock Work</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int LOCK_WORK_FEATURE_COUNT = VersionPackage.VERSION_STATE_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link bpel2rep.version.state.impl.SimuleSessionImpl <em>Simule Session</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see bpel2rep.version.state.impl.SimuleSessionImpl
	 * @see bpel2rep.version.state.impl.StatePackageImpl#getSimuleSession()
	 * @generated
	 */
	int SIMULE_SESSION = 2;

	/**
	 * The feature id for the '<em><b>Version</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SIMULE_SESSION__VERSION = VersionPackage.VERSION_STATE__VERSION;

	/**
	 * The number of structural features of the '<em>Simule Session</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SIMULE_SESSION_FEATURE_COUNT = VersionPackage.VERSION_STATE_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link bpel2rep.version.state.impl.FreeImpl <em>Free</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see bpel2rep.version.state.impl.FreeImpl
	 * @see bpel2rep.version.state.impl.StatePackageImpl#getFree()
	 * @generated
	 */
	int FREE = 3;

	/**
	 * The feature id for the '<em><b>Version</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FREE__VERSION = VersionPackage.VERSION_STATE__VERSION;

	/**
	 * The number of structural features of the '<em>Free</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FREE_FEATURE_COUNT = VersionPackage.VERSION_STATE_FEATURE_COUNT + 0;


	/**
	 * The meta object id for the '{@link bpel2rep.version.state.impl.InitialImpl <em>Initial</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see bpel2rep.version.state.impl.InitialImpl
	 * @see bpel2rep.version.state.impl.StatePackageImpl#getInitial()
	 * @generated
	 */
	int INITIAL = 4;

	/**
	 * The feature id for the '<em><b>Version</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int INITIAL__VERSION = VersionPackage.VERSION_STATE__VERSION;

	/**
	 * The number of structural features of the '<em>Initial</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int INITIAL_FEATURE_COUNT = VersionPackage.VERSION_STATE_FEATURE_COUNT + 0;


	/**
	 * Returns the meta object for class '{@link bpel2rep.version.state.LockUse <em>Lock Use</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Lock Use</em>'.
	 * @see bpel2rep.version.state.LockUse
	 * @generated
	 */
	EClass getLockUse();

	/**
	 * Returns the meta object for class '{@link bpel2rep.version.state.LockWork <em>Lock Work</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Lock Work</em>'.
	 * @see bpel2rep.version.state.LockWork
	 * @generated
	 */
	EClass getLockWork();

	/**
	 * Returns the meta object for class '{@link bpel2rep.version.state.SimuleSession <em>Simule Session</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Simule Session</em>'.
	 * @see bpel2rep.version.state.SimuleSession
	 * @generated
	 */
	EClass getSimuleSession();

	/**
	 * Returns the meta object for class '{@link bpel2rep.version.state.Free <em>Free</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Free</em>'.
	 * @see bpel2rep.version.state.Free
	 * @generated
	 */
	EClass getFree();

	/**
	 * Returns the meta object for class '{@link bpel2rep.version.state.Initial <em>Initial</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Initial</em>'.
	 * @see bpel2rep.version.state.Initial
	 * @generated
	 */
	EClass getInitial();

	/**
	 * Returns the factory that creates the instances of the model.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the factory that creates the instances of the model.
	 * @generated
	 */
	StateFactory getStateFactory();

	/**
	 * <!-- begin-user-doc -->
	 * Defines literals for the meta objects that represent
	 * <ul>
	 *   <li>each class,</li>
	 *   <li>each feature of each class,</li>
	 *   <li>each enum,</li>
	 *   <li>and each data type</li>
	 * </ul>
	 * <!-- end-user-doc -->
	 * @generated
	 */
	interface Literals {
		/**
		 * The meta object literal for the '{@link bpel2rep.version.state.impl.LockUseImpl <em>Lock Use</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see bpel2rep.version.state.impl.LockUseImpl
		 * @see bpel2rep.version.state.impl.StatePackageImpl#getLockUse()
		 * @generated
		 */
		EClass LOCK_USE = eINSTANCE.getLockUse();

		/**
		 * The meta object literal for the '{@link bpel2rep.version.state.impl.LockWorkImpl <em>Lock Work</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see bpel2rep.version.state.impl.LockWorkImpl
		 * @see bpel2rep.version.state.impl.StatePackageImpl#getLockWork()
		 * @generated
		 */
		EClass LOCK_WORK = eINSTANCE.getLockWork();

		/**
		 * The meta object literal for the '{@link bpel2rep.version.state.impl.SimuleSessionImpl <em>Simule Session</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see bpel2rep.version.state.impl.SimuleSessionImpl
		 * @see bpel2rep.version.state.impl.StatePackageImpl#getSimuleSession()
		 * @generated
		 */
		EClass SIMULE_SESSION = eINSTANCE.getSimuleSession();

		/**
		 * The meta object literal for the '{@link bpel2rep.version.state.impl.FreeImpl <em>Free</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see bpel2rep.version.state.impl.FreeImpl
		 * @see bpel2rep.version.state.impl.StatePackageImpl#getFree()
		 * @generated
		 */
		EClass FREE = eINSTANCE.getFree();

		/**
		 * The meta object literal for the '{@link bpel2rep.version.state.impl.InitialImpl <em>Initial</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see bpel2rep.version.state.impl.InitialImpl
		 * @see bpel2rep.version.state.impl.StatePackageImpl#getInitial()
		 * @generated
		 */
		EClass INITIAL = eINSTANCE.getInitial();

	}

} //StatePackage
